public 폴더의 이미지 사용하기

✒️ 2025-05-28 09:43 내용 수정


import logoImg from 'path/logo.png';

//.. 생략
function Test() {
	return(
		<div>
			<img src={logoImg} alt="로고이미지"/>
		</div>
	)
}

이미지 사용 관련 proxy error 발생

<img src='../../public/img/no_book_image.png' alt='책사진'/>

img error.png


이미지 가져오기

  1. 먼저 public 폴더의 하위 폴더로 img 폴더를 생성한다.
    • 서버는 public 폴더를 root 디렉터리 (/)로 취급하여 이의 상대 경로로 파일의 경로를 인식한다.
    • http://localhost:3000/img/filename.jpg와 같이 인식한다.

img.png

  1. 이미지를 사용할 Component.js 파일에서 <img> 태그를 사용하여 이미지를 불러온다.
    • 이 때 src를 서버 배포를 고려하여 process.env.PUBLIC_URL로 설정해두면 서버에 요청 시 도메인/img/이미지파일이름 으로 요청한다.
<img src={process.env.PUBLIC_URL + '/img/no_book_image.png'} alt='책사진'/>

img 2.png